package ar.com.psicosoft.model.psicosoft_datos_anexos;

import java.io.Serializable;

import javax.persistence.*;

import java.sql.Time;

/**
 * The persistent class for the localidad database table.
 * 
 */
@Entity
@Table(name = "localidad", schema = "psicosoft_datos_anexos")
@NamedQueries({
		@NamedQuery(name = "Localidad.buscarPorId", query = "SELECT l FROM Localidad l WHERE l.idLocalidad = :idLocalidad", lockMode = LockModeType.NONE),
		@NamedQuery(name = "Localidad.buscarPorNombreLocalidad", query = "SELECT l FROM Localidad l WHERE l.nombreLocalidad = :nombreLocalidad", lockMode = LockModeType.NONE),
		@NamedQuery(name = "Localidad.buscarLocalidades", query = "SELECT l FROM Localidad l ORDER BY l.nombreLocalidad", lockMode = LockModeType.NONE),
		@NamedQuery(name = "Localidad.eliminarLoaclidadPorId", query = "DELETE FROM Localidad l WHERE l.idLocalidad = :idLocalidad", lockMode = LockModeType.NONE) })
public class Localidad implements Serializable {
	private static final long serialVersionUID = 1L;

	@Id
	@SequenceGenerator(name = "sec_localidad", sequenceName = "psicosoft_datos_anexos.sec_localidad", allocationSize = 1)
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "sec_localidad")
	@Column(name = "\"idLocalidad\"", unique = true, nullable = false)
	private Integer idLocalidad;

	private Time baja;

	@Column(name = "\"codigoPostal\"", nullable = false, length = 4)
	private String codigoPostal;

	@Column(name = "\"idDepartamento\"", nullable = false)
	private Integer idDepartamento;

	@Column(name = "\"nombreLocalidad\"", nullable = false, length = 50)
	private String nombreLocalidad;

	// bi-directional many-to-one association to Departamento
	@ManyToOne
	@JoinColumn(name = "\"idDepartamento\"", insertable = false, updatable = false)
	private Departamento departamento;

	public Localidad() {
	}

	public Integer getIdLocalidad() {
		return this.idLocalidad;
	}

	public void setIdLocalidad(Integer idLocalidad) {
		this.idLocalidad = idLocalidad;
	}

	public Time getBaja() {
		return this.baja;
	}

	public void setBaja(Time baja) {
		this.baja = baja;
	}

	public String getCodigoPostal() {
		return this.codigoPostal;
	}

	public void setCodigoPostal(String codigoPostal) {
		this.codigoPostal = codigoPostal;
	}

	public Integer getIdDepartamento() {
		return this.idDepartamento;
	}

	public void setIdDepartamento(Integer idDepartamento) {
		this.idDepartamento = idDepartamento;
	}

	public String getNombreLocalidad() {
		return this.nombreLocalidad;
	}

	public void setNombreLocalidad(String nombreLocalidad) {
		this.nombreLocalidad = nombreLocalidad;
	}

	public Departamento getDepartamento() {
		return this.departamento;
	}

	public void setDepartamento(Departamento departamento) {
		this.setIdDepartamento(departamento.getIdDepartamento());
		this.departamento = departamento;
	}

}